Automatic termination path configuration

ABSTRACT

There is provided herein a system and method for automatic configuration of data routings for use with electronic data such as phone calls, faxes, etc. In the preferred embodiment, when more than one carrier might potentially terminate the transmission, the carriers are ordered based on some screening criterion (e.g., transmission price). Data transmissions are then assigned to the carriers based on the sorting order, with the second place and lower carriers (e.g., the higher priced carriers) not being selected unless the first carrier cannot complete the transaction. The switch instructions necessary to implement this scheme are generated automatically.

TECHNICAL FIELD

This invention relates to the general subject of transmission androuting of data and, in particular, to methods for transmitting androuting digital information such as telephone calls to an end locationvia multiple carriers according to time-varying criteria.

BACKGROUND OF THE INVENTION

The general problem of transmitting digital information from a sender toa recipient over a complex network is a well-known one. Of particularinterest in connection with the instant application is the problem ofmoving data such as voice data from an originating source to an endrecipient via an intermediary, where the method by which the informationis routed is dependent on multiple time-varying factors.

Those of ordinary skill in the art will recognize the general nature ofthe problem that is confronted by a data intermediary who seeks toconnect multiple data originators (“customers”, hereinafter) withcustomer-specified termination points via a multiplicity of possiblecarriers that could potentially handle the transmission (“carriers”,hereinafter). Conceptually the problem is a simple one, i.e., take anorder (e.g., accept a phone call, fax, etc.) from a customer, identify acarrier that is able to transmit the data to the required terminus, andthen pickup the data from the customer and transmit to the carrier fordelivery. For purposes of the instant invention, it will be generallyassumed that the termination will take place outside of the UnitedStates (e.g., this would occur where a telephone call is made from theU.S. to a foreign country), although that geographic configuration isnot a strict requirement.

However, a host of time-varying factors complicate the process ofselecting a carrier, one of which is the cost-quality factor, i.e., therouting choice might be based on some combination of the cost, quality,and other factors. That is, and as a first example, each carrier thatcould possibly terminate the data transmission at a specified locationmight potentially charge a different rate for such a termination. Ofcourse, it might be expected that these rates will be subject to change(e.g., in some cases hourly). Further, the quality of the communicationconduit that each carrier provides may vary between carriers and fromtime to time. For purposes of illustration in the text that follows, itwill be assumed that each carrier provides a data transmission servicethat can be characterized as being of at least one of two quality levels(e.g., high or low) with some carriers potentially providing allpossible quality levels. Of course, those of ordinary skill in the artwill recognize that the transmission quality of the conduit offered by acarrier might change from time to time and that there could beadditional refinements in the carrier's quality characterization (e.g.,three, four, etc., levels of transmission quality). Finally, eachcarrier has a limited bandwidth that it can offer and once the maximumtransmission bandwidth is reached for a given carrier, it will benecessary for the intermediary to secure the required additionalbandwidth from one or more other carriers (or, in some cases, it mightbe necessary to adjust the preferred conduit quality requirement up ordown, etc.). As a practical matter, the carrier that offers acombination of the lowest price and highest quality will typicallysecure orders up to its maximum bandwidth capacity.

In some instances, the intermediary will charge the customer aper-minute (or per byte, etc.) charge for data transmission. Typically,this charge will be based on the then-current fee charged to theintermediary by one or more of the carriers for the same quality of datatransmission to the selected location. Of course, the rates charged bythe various carriers are subject to change. In some instances, theability of the carriers to change transmission prices is limited bycontract and requires, for example, some number of days of advancenotice (e.g., seven days) to the intermediary. From the standpoint ofthe intermediary, when a carrier changes its pricing structure there isan incentive to do the same with respect to its own customers, and thisis especially true in the case where the carrier increases transmissionprices. Obviously, it would be to the advantage of the intermediary toimmediately increase its own transmission prices in response to anincrease from a carrier. However, typically the intermediary is limitedin its ability to change its own prices by the terms of contracts it hasentered into with its customers, which contracts typically require asimilar period of advance notice. In some instances, volume-baseddiscounts may be available from the carrier and/or discounts might beoffered to induce an intermediary to move business from one carrier toanother.

In other instances, the customer may impose geographic or other routingrequirements on the intermediary, which can further complicate thedelivery process. For example, some customers may require theintermediary to transmit its data to the intended destination so as toavoid certain countries or travel only through a short list of approvedcountries. More generally, the mere fact that some customers requireroutings that are different from the others poses a problem.

In some instances it may be necessary to reroute a data transmissionon-the-fly if, for example, a carrier experiences an intermittentproblem or if a carrier cannot accommodate the sort of data that is tobe transmitted (e.g., if the carrier cannot accommodate a faxtransmission). An additional factor that complicates the foregoing isthe dynamic nature of this business, with a near constant interactionbetween sales people, customers, and carriers resulting in the need fornear real-time routing adjustments.

The pricing strategy utilized by the intermediary may be furthercomplicated by a decision to, for example, agree to take an unprofitabletransmission from a customer as a condition of getting a much larger andmore profitable one from the same customer.

Finally, underlying all of the foregoing is the hardware network thatimplements the ultimate routing decision.

What is needed, then, is a method of automatically determining a voiceand data routing that accommodates some or all of the factors describedabove. Further, such a system should be flexible enough to separatelyroute individual customers if that becomes necessary or desirable.

Heretofore, as is well known in the data communications arts, there hasbeen a need for a method of routing international terminations that doesnot suffer from the limitations of the prior art. Accordingly, it shouldnow be recognized, as was recognized by the present inventors, thatthere exists, and has existed for some time, a very real need for amethod of routing that would address and solve the above-describedproblems.

Before proceeding to a description of the present invention, however, itshould be noted and remembered that the description of the inventionwhich follows, together with the accompanying drawings, should not beconstrued as limiting the invention to the examples (or preferredembodiments) shown and described. This is so because those skilled inthe art to which the invention pertains will be able to devise otherforms of this invention within the ambit of the appended claims.

SUMMARY OF THE INVENTION

According to a first exemplary embodiment of the instant invention,there is provided herein a system and method for the automaticconfiguration of data routings for use with electronic datatransmissions such as phone calls, faxes, etc. The instant exemplaryembodiment is especially useful when applied to the problem of routinginternational terminations. In the exemplary embodiment, when more thanone carrier might potentially terminate the transmission, the carriersare selected in order of some screening criterion (e.g., price). Datatransmissions are then assigned to the carriers based on the sortingorder, with the second place and lower carriers (e.g., the higher pricedcarriers) not being selected unless the first carrier cannot completethe transaction. In such an instance, the second, third, etc. placecarriers in the sort order will each be offered, in turn, thetransaction until one accepts and terminates the transmission.

According to an alternate exemplary embodiment embodiment, there isprovided a system and method of automatically configuring acommunications path between a customer and a carrier via anintermediary. Preferably, an order will be taken from a customer, acarrier will be identified, a path will be determined automatically ormanually, and the routing tables of one or more switches that are withinthe signal path will be automatically determined and transmitted to theproper switch, thereby creating a signal path that electronicallyconnects customer and carrier.

The foregoing has outlined in broad terms the more important features ofthe invention disclosed herein so that the detailed description thatfollows may be more clearly understood, and so that the contribution ofthe instant inventor to the art may be better appreciated. The instantinvention is not to be limited in its application to the details of theconstruction and to the arrangements of the components set forth in thefollowing description or illustrated in the drawings. Rather, theinvention is capable of other embodiments and of being practiced andcarried out in various other ways not specifically enumerated herein.Finally, it should be understood that the phraseology and terminologyemployed herein are for the purpose of description and should not beregarded as limiting, unless the specification specifically so limitsthe invention.

BRIEF DESCRIPTION OF THE DRAWINGS

Other objects and advantages of the invention will become apparent uponreading the following detailed description and upon reference to thedrawings in which:

FIG. 1 illustrates the general environment of the instant invention.

FIG. 2 contains a schematic illustration of a first preferred embodimentof the instant invention.

FIG. 3 contains a schematic illustration of system which includes theinstant invention.

FIG. 4 contains a conceptual drawing of a preferred embodiment of theinstant invention.

FIG. 5 contains a preferred operating logic suitable for use with theinstant invention.

DETAILED DESCRIPTION

While this invention is susceptible of being embodied in many differentforms, there is shown in the drawings, and will herein be described,some specific embodiments of the instant invention. It should beunderstood, however, that the present disclosure is to be considered anexemplification of the principles of the invention and is not intendedto limit the invention to the specific embodiments or algorithms sodescribed.

GENERAL ENVIRONMENT OF THE INVENTION

The instant invention is most preferably used in the environment ofinternational voice and data termination. FIGS. 4 and 1A illustrate ingreatly simplified terms the general environment in which the instantinvention would characteristically be used. As an aid to understandingthe invention taught herein but without any intention to limit theinstant invention to the facts of this example, consider the familiarscenario of a user who wishes to place an international telephone call.The user (or the phone owner) will have previously contracted with alocal communications (e.g., telephone) company to handle calls that areplaced through his or her phone. When the call is placed, it is pickedup by the contracting communications company and, without furtherintervention on the part of the user, is terminated internationally atanother phone which has been assigned the number dialed by the user. Ofcourse, the local communications company does not typically carry thephone call the entire distance to its destination, but instead passesoff the call to others for actual termination.

Some additional details of the previous scenario are illustrated in FIG.4. As is suggested in this figure, in a typical configuration one ormore telephone companies (or customers 400 hereinafter) will transmitrequests for remote termination from their respective users 450 to alocal facility location 410 of an intermediary. Note that there might bemany such local facility locations 410, although in this simplifiedexample only a single such facility 410 is shown. The facility 410 willtypically aggregate the requests from multiple customers 400 (and/ormultiple requests from different users 450 of the same customer) andtransmit those requests via a high-speed link (e.g., a fiber opticcable) to a centralized location 420, which might be a colocationfacility of the intermediary. At this sort of centralized location 420,each signal (e.g., a telephone or fax call) from a customer 450 ishanded off to one of potentially many carriers 20 that can transmit thesignal on to its intended destination. Examples of customers 400 of thesort contemplated herein include wired and wireless telephone companiessuch as Sprint®, Cingular®, etc.

Focusing now on the role of the intermediary 15 and turning next to FIG.1A, in a typical scenario, a user initiates a data transfer request(e.g., he or she might dial a phone number). The call is fielded by acustomer 10 which then forwards the data transmission request to anintermediary 15 which is responsible for identifying and selecting acarrier 20 that can take the data transmission on to its intendeddestination/termination 25. Of course, and as has been mentionedpreviously, some preferred examples of data transmissions suitable foruse with the instant invention include telephone calls, faxes,video/audio programming, etc.

FIG. 1B illustrates in greater detail how a preferred embodiment of theinstant invention fits within the schematic of FIG. 1A. That is, in atypical implementation, the intermediary will receive data transmissions50 from multiple customers. Each of these transmissions mightpotentially arrive from a different customer, although it is anticipatedthat each customer will send many data transmission requests to theintermediary 15. The data transmissions 50 might arrive wirelessly, viaa wired connection, or some combination of the foregoing.

One principal function of the intermediary 15 is to detect and acceptthe data transmissions 50 from the customer, determine a best (or atleast an acceptable) routing that will take the data to its ultimatedestination, secure a carrier 40 to implement that routing, andinternally configure switches to cause the data transmissions 50 to betransferred to the appropriate carrier 60. Of course in conjunction withthis operation, it should be understood that various financial matterswill necessarily need to be administered afterward (e.g., in a typicalscenario the customer will bill the user/originator for the call, theintermediary will bill the customer, and the carrier will bill theintermediary). For purposes of specificity only, by way of example insome cases there will be about 50-60 different customers providing datato the intermediary and, perhaps, 40 or so available carriers.

PREFERRED EMBODIMENTS

According to a first preferred embodiment, there is provided a systemand method for automatic routing of voice and data transmissions whichhas a configuration generally as set out in FIG. 3. As is illustrated inthis figure, a key aspect of the instant invention is a centralcomputerized database 340 which is designed to hold and make availabledata that is important to the routing operation discussed hereinafter.Among the sorts of information that might be maintained within thisdatabase are the quality level(s) provided by a carrier, its availablebandwidth, the current contract price(s) with that carrier, etc.Obviously, the value of each of these carrier parameters couldpotentially be subject to change at any time, e.g., in some cases theymight change hourly. Additionally, the database 340 will preferablyadditional be used to store information such as the requirements of eachcustomer with respect to, for example, transmission quality, routinginstructions, current contract price(s), etc. Finally, in some preferredembodiments the database 340 will contain information relating to thephysical configuration of the network, details of the intermediary'sinternal switching system, a representation of the network topology,etc. Of course, all of the foregoing are just examples of the sorts ofinformation that might be stored in this database 340. Finally, itshould be understood that the term “database” is meant to include, notonly the information stored therein, but also whatever combination ofsoftware and/or hardware might be necessary to access, search, andotherwise utilize the stored information for the purpose of the instantinvention. Further, the database itself need not be a hierarchical orother structured database but could be, for example, merely a flat filecontaining a sequential listing of data records.

In electronic communication with the database are preferably acollection of software and/or hardware modules that are responsible fordifferent aspects of the system's operation, which modules preferablyinclude a software cost module 310 which is responsible for, among otherthings, intercepting communications 305 (typically sent via e-mail) fromcarriers that are intended to give advance notice of rate changes.Obviously, if a carrier has raised the price of data transmission, suchinformation will preferably be identified and extracted from an incominge-mail so that it can be communicated to and stored within the centraldatabase 340, thereby potentially making such information potentiallyavailable to everyone in the organization who might need to know it. Ofcourse, receipt, identification (preferably automatically), and storagein the database 340 of such notices means that this information isavailable for use by, for example, the charge module 320 whichpreferably contains current customer pricing information and othercontract details such as the length of advance notice that is requiredin order to be able to modify each customer's contract, the currentterms, etc. So, when notice is received of a price increase from acarrier, a similar notice 325 (based, for example, on a fixed margin orpercentage markup) will preferably automatically be sent to thecustomer(s) who are affected by the price change, thereby reducing to aminimum the length of time that the intermediary must wait pursuant tocontract before modifying its own prices accordingly. Similarly, thecharge module 320 is preferably used in concert with usage informationthat might be stored in the database 340 at least for purposes ofsending statements to clients (e.g., via billing module 315).

Another aspect of the instant inventive system preferably involves theuse of a margin/performance analysis and reporting module 330. That is,in some preferred embodiments the transmission price charged tocustomers will be a predetermined markup (e.g., percent or flat amount)from the cost to transmit the customer's data via a selected carrier.Preferably the module 330 will be able to automatically make thatcalculation based on prices charged by each carrier. Additionally, thismodule 330 will preferably be able to produce printed or electronicreports that summarize the activity of each customer and each carrierand, based on the price differential at the time of the transaction,determine the associated profitability.

As another preferred component of the instant system, a networkperformance module 335 will preferably be implemented. The networkperformance module 335 is intended to provide some tracking of thenumber of data transmission requests that have been delivered to theintended destination (e.g., completed), preferably such tracking beingdone separately for each carrier. Of course, those of ordinary skill inthe art will recognize that this sort of information can be of criticalimportance in evaluating a carrier's reliability and when making routingdecisions.

Preferably in communication with the central database 340 and the costmodule 310 is the routing structure module 345. For purposes of theinstant disclosure, the “routing structure” of a system will beunderstood to mean the collection of carriers and associated signalpaths that could be used to carry a client's data to a givendestination. One preferred aspect of this module 345 is that it will beused to compile an inventory of carriers that can terminate to aparticular destination and the cost (and transmission quality, etc.)associated with each. More broadly, the routing module 345 could utilizenetwork performance information (from module 335 or obtained elsewhere)to compile an assessment of the reliability of each carrier as measuredby completed data transactions, incomplete transactions (e.g., droppedcalls), etc. Note that in the preferred embodiment, the actual routingstructure will be determined by reference to the database 340, whereinformation such as cost/quality trade offs for each carrier, customerrouting preferences, etc., is preferably available. That being said, ina preferred arrangement the actual routing decisions will be made inconjunction with the information obtained by the routine structuremodule 345.

As a next preferred aspect of the instant system, a computerized switchcontrol module 350 will be used to convert the routing information intoswitch instructions, e.g., into instructions that specify how to updatethe routing tables on the proper switch or switches. That is, and as isdescribed in greater detail below, preferably a signal path will bedetermined (automatically or manually) between a customer entry point360 and a carrier exit point 365 (e.g., a port within a switch), thechosen signal path obviously being a function of the components of theswitching system 355, the particular customer and carrier, and variousother constraints imposed on the transmission by the customer, thecarrier, the economics of the transaction, etc. The resulting signalpath will preferably be created by communicating switching instructionsthat have been generated by the module 350 to the switching system 355.Note that such instructions might take the form of physical and/orlogical switch commands that are to be executed within each of thepossibly numerous electronic switching device that comprise at least apart of the chosen signal path, but preferably the commands will bedesigned to update the tables on the switch to implement the desiredrouting. The switch control module 350 will preferably be in electroniccommunication with the central database 340 and responsive to commandsfrom it including, for example, the chosen routing information. Thatbeing said, in some embodiments the preferred routing will be manuallydetermined and such information will be directly entered into thesoftware module 350, thus making the connection to the central databaseoptional.

Turning next to FIG. 2, and according to a preferred aspect of theinstant invention, there is provided a preferred method of automaticallyconfiguring a transmission path 205. As a first preferred step, an orderwill be obtained from a customer 210. Those of ordinary skill in the artwill understand that this order might be taken verbally, electronically,etc., depending on the nature of the business arrangement. In any case,a typical agreement will entail a contract with the intermediary tocarry the customer's data, typically voice and fax communications, fromthe

United States to a foreign country, i.e., an international termination.That being said, it should be clear that the methods disclosed hereinwould be equally applicable to a local (e.g., within the United States)termination.

As a next preferred step, the information related to the order will bestored in a central database (step 215). Although this step is optional,it is beneficial for a number of reasons. First, central storage of suchinformation makes it possible for others in the organization (e.g., thebuyers of carrier bandwidth) to access it. Additionally, after it isstored this information will be readily available in the event that acarrier revises its price upward and all customers who would be affectedthereby need to be contacted.

As a next preferred step 220, a rate structure will be negotiated with acarrier that is capable of terminating data transmissions in thecustomer's designated location. Needless to say, the rate structure willneed to be profitable for the intermediary (except, of course, inspecial circumstances). Note that steps 220 and 220 might occur in anyorder, e.g., carrier bandwidth might have been secured far in advance ofentering a deal with the customer. Unless the same individual happens tosecure the carrier contract as negotiated the customer's order, it islikely that the information related to the customer's order will need tobe read from the database, which argues for centralized storage of suchinformation so that it will be available for use as needed.

Next, the routing structure between the customer and the carrier willpreferably be determined (step 225). In some preferred embodiments, therouting will be determined automatically. In other embodiments, therouting will be determined manually. However, in either case an objectof the routing is to specify a path from the customer to the carrier viaswitching system 355. Note that the switching system 355 might consistof only a single switch but, more typically, could represent tens oreven hundreds (or more) interconnected switches wired in series or inparallel. As a simple example, in some cases the customer will havesignals that are available for pickup in Los Angeles and the carrierthat is handling an international termination has a point of presence inBoston. In such an instance, the routing could involve many differentswitches and the signal path could travel over many hundreds of milesfrom its source to its U.S. destination under supervision of theintermediary. As a consequence, it should be understood that the processof determining the routing could be a complex task in some instances. Insome preferred embodiments, this step 225 will be performed manually andin other variations it will be performed automatically, depending on thepreferences of the intermediary in this regard. Further, such a routingmay include contingency routing information in the event that a problemdevelops along the chosen path or in the event that a selected carrieris unable to carry the transmission. This might happen, for example, ifa carrier's capacity is exceeded, if a carrier has technical problemsthat cause it to be unable to fulfill its obligations, etc. In such acase, it would be useful to have an alternative routing available so asto disrupt service to the customer as little as possible.

As a next preferred step, given the routing information the actualswitching instructions will be automatically generated (step 230) andthe appropriate switch commands transmitted to the switch or switchesthat are in the prospective signal path (step 233). That is, each of thevarious switch or switches that make up the communications network areprogrammable according to techniques well know to those of ordinaryskill in the art, e.g., each switch in the signal path will be sentinstructions to update its routing table(s) appropriately. In mostcases, a dedicated computer program provided by the switch manufactureris used to reassign inputs and outputs by transmission and receipt of aseries of machine language (or other) instructions. However, in thepreferred embodiment of the instant invention this step will beperformed by a multi-function computer program that automaticallytranslates the designated routing information into switch instructions.

As a first preferred step in the process of automatically generating theswitching instructions, the routing path will be automatically convertedto machine readable form, e.g., the routing information will be manuallyentered into a computer program that has been created for the purpose ofgenerating switching instructions. Of course, such a program may verywell have other functions, but at least one function should be toconvert the routing information obtained in step 225 into switchinginstructions for each switch in the signal path between the customerentry point and the carrier exit point.

As a next preferred step, the switching instructions determined in step230 will be communicated (step 233) and applied to the one or moreswitches in the signal path (step 235), thereby creating a signal pathfrom the customer's entry point to the selected carrier's pickup point.

Preferably, the instant method proceeds with the reception (step 240) ofdata from the customer and the transmission of that data from the pointof entry to the point where the carrier can pick it up forretransmission (step 245) via the route selected previously (step 225).

Finally, and as a last preferred step, the instant invention willmonitor the data that was handed to the carrier for successfultermination (step 250). As has been discussed previously, although thismight be done for many reasons, one preferred reason for doing this isfor purposes of quality control, with transmissions that are notproperly terminated being indicative of poor quality on the part of thecarrier.

Turning next to a more detailed discussion of steps 225 through 233, asis generally indicated in FIG. 5 in a preferred embodiment the instantswitching method 500 will begin with the activation of a computerprogram by a user (step 510). As is customary in such instances, theprogram will initialize various internal program variables and prepareto interact with a user. Note that the program might be activated uponthe receipt of a new order from a customer, in response to anannouncement of a price change from a carrier, etc. Either way, thisaspect of the instant invention will work similarly.

As a next preferred step, the user will enter the customer's name (step515) or some other designation sufficient to identify a customer (e.g.,a customer identification number or serial number). In some instances,details concerning the customer's preferences (e.g., quality/pricetradeoffs preferences, routing instructions, etc.) might be read fromthe central database 340 or some other source.

Next, preferably the user will enter information related to thecustomer's specified termination location (e.g., the chosen country)and/or a preferred transmission quality (step 520) into the program 500.As has been discussed previously, in most cases at the time the order isplaced the customer will specify whether there is a preference for ahigher or lower quality transmission and such a preference willpreferably be indicated at this point. Of course, if this informationhas not been specified in connection with the current transaction itcertainly could be determined, for example, by reference to a preferredor default data quality as might be stored, for example, in the database340.

As a next preferred step 525, an inventory of carriers that canterminate in the selected country and that can provide the requiredtransmission quality will be accessed, preferably by reading them fromthe central database 340. Obviously, this step is dependent on thecarrier information having been previously stored in the database, withthe location and format of such information largely determining how step525 is to be implemented.

Next, preferably the instant program will automatically sort orotherwise order the carrier inventory according to a predeterminecriterion before presenting them to the user (step 530). In thepreferred embodiment, the carriers will be sorted by transmission price.That is, and assuming that more than one carrier can terminate in theselected location, the carriers will preferably be sorted in order ofincreasing price, with the lowest price character being “first” or mostpreferred. This assumes, of course, that all of the chosen carriersoffer the same quality level. In such an instance, price should be aprincipal consideration and the instant program orders the carriersaccordingly. Of course, those of ordinary skill in the art willrecognize that the ordering might be made based on any arbitraryperformance, quality, or economic-related variable etc., but, forpurposes of specificity in the text that follows, it will be assumedthat price for the same quality level is used to order the carriers.More generally, for purposes of the instant disclosure the term“screening criteria” will be used to refer to any carrier relatedvariable that might be used to arrange the carriers in order ofpreference. Further, it is entirely likely that the sort order could bebased on multiple ones of the screening variables (e.g., price andquality). Of course, the methods by such multivariable sorts are doneare well known to those of ordinary skill in the art.

It should be noted that a primary reason that the carriers are sortedaccording a variable such as price is to provide a default ordering inthe event that a carrier is unable for whatever reason to terminate agiven transaction. By way of explanation, preferably the carrier that issorted “first” in the list will be the lowest-cost provider for a givenquality level. Carriers that are sorted further down in the list will bethose that are more expensive at the same level of quality. Logically,other things being equal so long as customer's call can be handled bythe lowest-price carrier, that carrier will be allowed to terminate thecall, thereby maximizing profit to the intermediary. However, if thefirst carrier cannot complete a call (e.g., if a carrier must reject acall because its bandwidth has been filled) the second carrier in thelist will preferably be utilized, and so on.

As a next preferred step, the user will be presented with the orderedlist of carriers (step 535) and then asked to approve the list (step538). If the ordering is acceptable, the program will preferably proceedto the next step. On the other hand, if the user wishes to manuallyreorder the list, he or she will preferably be given that opportunity(step 540).

The ordered list of carriers will preferably be utilized in connectionwith the switching system as follows. In one preferred embodiment, aswitch such as a DMS-GSP switching system by Nortel® will be used.Switching systems such as this provide a programmer with a variety ofoptions, including automatic rerouting in the event that one carrier ina list cannot or will not accept a data transmission. One means ofutilizing this capability is to program the switch to sequentiallyselect the carriers in the order specified at step 538. Then, if thefirst carrier (e.g., the one with the lowest price) fails to accept thecall, the second carrier (next lowest priced) carrier will beautomatically selected, and so on. Of course, those of ordinary skill inthe art will understand that the switch will be informed of a carrier'srejection of a transmission according to telecommunications conventionsthat are old and well known in the art.

As a next preferred step 545, the instant program will convert thetermination location, as well as the preferred carrier ordering, intoswitch instructions for use in programming the one or more switches thatare situated along the electronic path between the customer and thechosen carrier. Of particular importance when there is more than onepotential carrier is the fact that the program 500 should generate theswitch instructions (e.g., the switch routing table entries) that arenecessary for selecting the chosen carrier—as well as those instructionsthat provide for the selection of at least one alternative carrier.Those of ordinary skill in the art will understand the sorts ofswitching instructions that might be generated by this program 500,given the criteria discussed above.

Finally, the switching instructions will preferably be communicated tothe switch or switches (step 550) electronically according to methodswell known to those of ordinary skill in the art, thereby preparing thesignal path for receipt of a data transmission from that customer.

In operation, each item of information (e.g., each packet) that isreceived from a customer either arrives with—or is assigned—anidentifier that might be associated with, among other things, theintended destination of that item. By way of example, each item ofinformation preferably has an associated “destination code” thatspecifies the intended destination country. The presence of adestination code makes it possible for any switch that sees such data toroute it to the chosen destination according to the switch'sprogramming. Thus, when a switching system which has been programmedaccording to the instant invention is the recipient of such an item ofinformation, it is able to route it internally according to itsprogramming as communicated to it via instruction generation program500, thereby sending that information along to the country (andultimately the termination destination) of choice via the carrier (or apreferred alternate carrier) specified previously. Transmissions areusually identified as to the originating customer by reference to atrunk group ID or a similar scheme that is associated with the call orother data transmission.

Finally, and according to still another preferred aspect of the instantinvention, there is provided an invention substantially similar to thatdisclosed above, but wherein each customer might potentially have itsown unique routing structure. Said another way, it is traditional inthis industry that the carriers that have been chosen for a country willbe utilized by every customer that sends data to that country: the“first choice” (or selected alternative) carrier terminates all callsthat are intended for that country. This is the case whether the chosencarrier is acceptable to the customer or not.

By way of general background, in most cases, an intermediary of the sortdiscussed will utilize switches that provide for partitioning. As aspecific example, it is known in the art to partition a switch into twodifferent operational areas—one of which handles the high quality datatransmissions and another that handles the lower quality transmissions.Of course, the disadvantage of such an arrangement is that everycustomer will necessarily utilize the same routing. Said another way,when a two-partition (high/low quality) approach is utilized, theunderstanding is that each customer in the “high quality” partition willutilize exactly the same routing. This can create a variety of problems.For example, if one customer in the high quality partition is havingproblems terminating a call to a particular fax machine in India, itmight be desirable to try an alternative routing to fix the problem.However, if a change in the routing is made to accommodate the customerhaving problems, every other customer in the same partition will besimilarly affected.

However, and according to another preferred aspect of the instantinvention, a separate partition is created within the switching devicethat corresponds to a single customer. Thus, in some circumstances theremight be high/low quality partitions and, additionally, one or morepartitions that have been assigned to individual customers. Thisindividual-client partition is assigned a routing structure according tothe methods discussed previously. Then, customer data that is found(e.g., by reference to a trunk group ID) to be associated with thisparticular partition—which might be configured for as few as a singlecustomer—is routed in the manner programmed previously, independently ofhow other customers might be routed to that destination.

For purposes of the instant disclosure, the term “voice” as it appliesto the transmission of information between a customer and a carriershould be broadly construed to include traditional telephonic voicesignals, as well as fax signals, video signals, and other data signals.

Further, it should be noted that although the instant invention has beenlargely described in terms of a one-way transmission from a customer toa carrier, in fact the transmission could very well be two-way, e.g., inthe case of a telephone call voice data will flow in both directions,typically along the same signal path. As a consequence, when the terms“customer entry point” and “carrier exit point” are used herein, thoseterms should be understood to include situations where the flow ofinformation includes transmissions from the carrier back to thecustomer, i.e., the “entry” and “exit” points are actually “access”points.

Finally, it should also be understood and remembered that when referenceis made herein to transmitting a signal from a customer to a carrier,that concept should be broadly interpreted to include instances wherethe signal received from the customer is modified by the intermediaryduring its transmission. As a specific example, in some cases it mightprove to be beneficial to apply data compression, encryption, etc. tothe signal received from the customer. In this case, the compressedsignal—as opposed to the actual signal received from the customer—willtypically be transmitted along the route chosen by the intermediary andthen expanded before handing it off to the carrier. The advantages ofsuch a scheme are well known to those of ordinary skill in thetelecommunications arts. Of course, and as an example only, unlesslossless compression is utilized, the reconstructed signal that isprovided to the carrier might be slightly different from the signal thatwas originally provided by the customer. Thus, in those instances hereinwhere a signal is said to be transmitted from a customer to a carrier itshould be understood that the signal might very well undergo one or moretransformations during the time that it is under the control of theintermediary and, further, upon exit from the instant system it mightdiffer in some insignificant ways from the signal originally received.Still, the signal provided to the carrier will be, for all practicalpurposes, the same as the signal that was originally received. As such,when a signal is said to be transmitted from a customer to a carrierherein, it should be understood that so long as the signal that isreceived by the carrier is substantially the same as the customer'ssignal, the received signal will be said to be the same signal.

While the inventive device has been described and illustrated herein byreference to certain preferred embodiments in relation to the drawingsattached hereto, various changes and further modifications, apart fromthose shown or suggested herein, may be made therein by those skilled inthe art, without departing from the spirit of the inventive concept, thescope of which is to be determined by the following claims.

1. A method of configuring a signal path between a customer entry pointand a termination destination, comprising the steps of: a. selecting acarrier that can provide access to said termination destination; b.determining a routing for a signal path between said customer entrypoint and a carrier exit point accessible by said selected carrier,wherein said signal path passes through at least one switching device;c. encoding at least a portion of said routing in machine readable form,thereby producing machine readable routing information; d. within acomputer program, using said machine readable routing information tocreate a plurality of electronic switching instructions for use witheach of said at least one switching devices; e. automaticallyprogramming each of said at least one switching devices through whichsaid routing passes according to at least one of said plurality ofswitching instructions, thereby creating said signal path between saidcustomer entry point and said carrier exit point; f. receiving a voicetransmission from a customer via said customer entry point; g. transmita signal representative of said voice transmission from said customerentry point to said carrier exit point via said created signal path; andh. provide said signal representative of said transmitted voicetransmission to said selected carrier at said carrier exit point fortermination at said predetermined termination destination.
 2. The methodof claim 1 further comprising: i. obtaining said predeterminedtermination destination from the customer; j. selecting a carrier thatcan provide access to said termination destination; and k. determining arouting for a signal path between a customer entry point accessible bythe customer and a carrier exit point accessible by said selectedcarrier, wherein said signal path passes through at least one electronicswitching device.
 3. The method of claim 2 further comprising: l.activating a computer program; m. entering said routing structure intosaid computer program; and n. within said computer program, translatingsaid routing structure into a plurality of switch instructions.
 4. Themethod of claim 3 further comprising: o. electronically communicating atleast a portion of said plurality of switch instructions from saidcomputer program to each of said at least one electronic switchingdevices in said signal path to in order to implement said routing; p.receiving said voice transmission from said customer via said customerentry point; q. transmitting said voice transmission from said customerentry point to said carrier exit point via said implemented routingaccording to said transmitted plurality of switch instructions; and, r.providing said transmitted voice transmission to said selected carrierat said carrier exit point.
 5. The method of claim 4, wherein said voicetransmission is selected from a group consisting of an audiotransmission, a video transmission, a fax transmission, and a datatransmission.
 6. The method of claim 4, wherein step (j) comprises thesteps of: (j1) selecting a carrier that can provide access to saidtermination destination, and, (j2) negotiating a rate structure withsaid selected carrier, and, wherein claim 2 further comprises the stepof: (s) using at least said negotiated rate structure to determine acharge for said transmission of step (f), and, (t) assessing said chargeagainst said customer.
 7. The method of claim 4, wherein step (q)comprises the steps of: (q1) compressing said voice transmission toproduce a compressed signal, (q2) transmitting said compressed signalfrom said customer entry point to said carrier exit point via saidimplemented routing according to said transmitted plurality of switchinstructions, (q3) expanding said transmitted compressed signal toproduce an expanded voice transmission, and, wherein step (r) comprisesthe step of: (r1) providing said expanded voice signal to said selectedcarrier at said carrier exit point.
 8. An apparatus configured to obtaina signal path between a customer entry point and a terminationdestination, the apparatus comprising a computer based controllerconfigured to: select a carrier that can provide access to saidtermination destination; determine a routing for a signal path betweensaid customer entry point and a carrier exit point accessible by saidselected carrier, wherein said signal path passes through at least oneswitching device; encode at least a portion of said routing in machinereadable form, to provide machine readable routing information; within acomputer program loaded on the controller, use said machine readablerouting information to create a plurality of electronic switchinginstructions for use with each of said at least one switching devices;automatically program each of said at least one switching devicesthrough which said routing passes according to at least one of saidplurality of switching instructions, thereby creating said signal pathbetween said customer entry point and said carrier exit point; receive avoice transmission from a customer via said customer entry point;transmit a signal representative of said voice transmission from saidcustomer entry point to said carrier exit point via said created signalpath; and provide said signal representative of said transmitted voicetransmission to said selected carrier at said carrier exit point fortermination at said predetermined termination destination.
 9. Theapparatus of claim 8, in which the computer based controller is furtherconfigured to: obtain said predetermined termination destination fromthe customer; select a carrier that can provide access to saidtermination destination; and determine a routing for a signal pathbetween a customer entry point accessible by the customer and a carrierexit point accessible by said selected carrier, wherein said signal pathpasses through at least one electronic switching device.
 10. Theapparatus of claim 9, in which the computer based controller is furtherconfigured to: activate said computer program; enter said routingstructure into said computer program; and within said computer program,translate said routing structure into the plurality of switchinstructions.
 11. The apparatus of claim 10, in which the computer basedcontroller is further configured to: electronically communicate at leasta portion of said plurality of switch instructions from said computerprogram to each of said at least one electronic switching devices insaid signal path to in order to implement said routing; receive saidvoice transmission from said customer via said customer entry point;transmit said voice transmission from said customer entry point to saidcarrier exit point via said implemented routing according to saidtransmitted plurality of switch instructions; and, provide saidtransmitted voice transmission to said selected carrier at said carrierexit point.
 12. The apparatus of claim 11, wherein said voicetransmission is selected from a group consisting of an audiotransmission, a video transmission, a fax transmission, and a datatransmission.
 13. The apparatus of claim 11, in which the computer basedcontroller is further configured to: select a carrier that can provideaccess to said termination destination; negotiate a rate structure withsaid selected carrier; use at least said negotiated rate structure todetermine a charge for said transmission; and assess said charge againstsaid customer.
 14. The apparatus of claim 11, in which the computerbased controller is further configured to: compress said voicetransmission to produce a compressed signal, transmit said compressedsignal from said customer entry point to said carrier exit point viasaid implemented routing according to said transmitted plurality ofswitch instructions, expand said transmitted compressed signal toproduce an expanded voice transmission; and provide said expanded voicesignal to said selected carrier at said carrier exit point.
 15. A systemcomprising: a computer based controller configured to: select a carrierthat can provide access to a termination destination; determine arouting for a signal path between a customer entry point and a carrierexit point accessible by said selected carrier, wherein said signal pathpasses through at least one switching device; encode at least a portionof said routing in machine readable form, to provide machine readablerouting information; within a computer program loaded on the controller,use said machine readable routing information to create a plurality ofelectronic switching instructions for use with each of said at least oneswitching devices; and automatically program each of said at least oneswitching devices through which said routing passes according to atleast one of said plurality of switching instructions, thereby creatingsaid signal path between said customer entry point and said carrier exitpoint.
 16. The system of claim 17 further comprising: a switching modulein communication with a customer entry point controller, and a carrierexit point controller; and a central database provided by a computerbased controller communicating with the computer based switching system.17. The system of claim 16, further comprising a computer based chargemodule communicating with the customer entry point controller, thecharge module providing cost data to a customer.
 18. The system of claim16, further comprising a computer based cost module communicating withthe central database, the cost module providing cost data to saidcentral database.
 19. The system of claim 18, in which the computerbased controller is further configured to: receive a voice transmissionfrom a customer via said customer entry point; transmit a signalrepresentative of said voice transmission from said customer entry pointto said carrier exit point via said created signal path; and providesaid signal representative of said transmitted voice transmission tosaid selected carrier at said carrier exit point for termination at saidpredetermined termination destination.
 20. The system of claim 18, inwhich the computer based controller is further configured to: obtainsaid predetermined termination destination from the customer; select acarrier that can provide access to said termination destination; anddetermine a routing for a signal path between a customer entry pointaccessible by the customer and a carrier exit point accessible by saidselected carrier, wherein said signal path passes through at least oneelectronic switching device.